#ifndef CIRCLE_H
#define CIRCLE_H

#include "Vector2D.h"
#include "Rectangle.h"

class Circle 
{
	private:
		float x;
		float y;
		float r;
	public :
	Circle(const Vector2D& center, const float radius);
	Circle(const float x, const float y, const float radius);
	void Init(const float x, const float y, const float radius);
	bool Contains(const float x,const float y);
	bool Contains(const Vector2D& point);
	float GetX() const {return x;}
	float GetY() const {return y;}
	float GetRadiusSq() const {return r*r;}
	float GetRadius() const {return r;}
	void SetPosition(const Vector2D& vect);
	void SetPosition(const float x,const float y);
	void MoveBy(const Vector2D& vect);
	void MoveBy(const float x,const float y);
	bool CollidesWith(const Circle& circ);
	bool CollidesWith(const Rectangle& rect);
	bool Equals(const Circle& circ);
};

#endif